Existing content filtering techniques such as URL filtering are typically performed at the HTTP stage of a communication flow. In many such cases, lower level communications may be futilely performed. Moreover, some forms of suspect or malicious activity may not be detectable at the HTTP stage.